using System;
using System.Collections.Generic;
using System.Text;
using Liberty.Domain.ApprovalManagement;
using Liberty.Domain.Kernel;
using Liberty.Domain.ApprovalManagement;
using Liberty.Domain.CaseManagement;
using Liberty.Domain.GrantManagement;
using Liberty.Domain.ServiceMemberManagement;

using Peradigm.Framework.Persistence;
using Peradigm.Framework.Domain.Security;

using Microsoft.VisualStudio.TestTools.UnitTesting;
//using NUnit.Framework.SyntaxHelpers;

namespace Tests.DomainTests.Kernel {

#if DEBUG
    [TestClass()]
    public class EventTests : Object {

        #region Constants
        private const string
            FIRST_NAME = "TestFirstName",
            LAST_NAME = "TestLastName",
            NOTES_DESCRIPTION = "Test Notes Description";

        private const string ACTIVITY_DESCRIPTION = "D";

        private const long
            EMPLOYEE_ID = 56L;
        #endregion

        #region SetUp and TearDown EventTests
        [TestInitialize()]
        public void SetUpEventTests()
        {
        }

        [TestCleanup()]
        public void TearDownEventTests()
        {
        }
        #endregion

        #region Test Methods

        [Ignore]
        [TestMethod()]
        public void TestProperties()
        {
            Activity anActivity = new Activity( ACTIVITY_DESCRIPTION, ReferenceValue.DEFAULT_RANKING, true );            

            Case aCase = new Case();
            Grant aGrant = new Grant();
            ServiceMember aServiceMember = new ServiceMember();
            User aUser = new User();
            User anEventUser = new User();

            Event anEvent = new Event();
            anEvent.Activity = anActivity;
            anEvent.Note = NOTES_DESCRIPTION;
            anEvent.CreatedBy = aUser;

            Assert.AreEqual( anActivity, anEvent.Activity );
            Assert.AreEqual( NOTES_DESCRIPTION, anEvent.Note );
            Assert.AreEqual( aUser, anEvent.CreatedBy );
            //Assert.That( anEvent.Case, Is.EqualTo( aCase ) );
            //Assert.That( anEvent.Grant, Is.EqualTo( aGrant ) );
            //Assert.That( anEvent.ServiceMember, Is.EqualTo( aServiceMember ) );
        }

        #endregion Test methods

        #region Support Methods
        #endregion

        #region Data Elements
        #endregion

    }
#endif

}

